home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CU Amiga Super CD-ROM 11
/
CU Amiga Magazine's Super CD-ROM 11 (1997)(EMAP Images)(GB)(Track 1 of 3)[!][issue 1997-06].iso
/
cucd
/
programming
/
stormc-demo
/
stormc install-script english
< prev
next >
Wrap
Text File
|
1997-01-07
|
17KB
|
811 lines
; $VER: StormC V2.0 Install Version 1.07 (07.01.97)
; Installations-Script
; (c) 1997 HAAGE & PARTNER Computer GmbH
(complete 0)
; Die Versionsnummer und das Erstellungs-Datum der hier installierten
; Versionen.
(set stcpp-version "2.0")
(set stcpp-date "(7 Dec 96)")
;====================================================================
; Initialisierungen
(set @default-dest "")
(set os-version (/ (getversion) 65536))
(set os-13 (< os-version 36))
(set os-20 (>= os-version 36))
(set os-21 (>= os-version 38))
(set totalmem (database "total-mem")) ; Diese schöne Funktion vereinfacht einiges
; Die Pfadnamen der Programme, die vom Installations-Skript aufgerufen werden.
; Die Pfadnamen der einzelnen Quell-Dateien.
(set #binsource (tackon (pathonly @icon) "StormSYS")) ; Hier stehen die Ausführbaren Programme
(set #includesource (tackon (pathonly @icon) "INCLUDE")) ; Hier stehen die Includes
(set #envsource (tackon (pathonly @icon) "ENV")) ; Die Voreinstellungen
(set #libsource (tackon (pathonly @icon) "LIB")) ; Hier stehen die Bibliotheken
(set #wizlib (tackon (pathonly @icon) "LIBS/Wizard.library")); Hier steht die Bibliohtek
(set #samplesource (tackon (pathonly @icon) "Examples")) ; Hier stehen die Demo-Sourcen
(set #manualsource (tackon (pathonly @icon) "MANUAL")) ; Hier steht die Dokumentation
(set #toolssource (tackon (pathonly @icon) "TOOLS")) ; Hier stehen die Tools
(set #rexxsource (tackon (pathonly @icon) "Rexx")) ; Hier stehen die neuen Makescripts
;(set #flibsource (tackon (pathonly @icon) "Fast-Ansi-Lib")) ; Hier steht die neue Ansi-lib
;(set #muilibsource (tackon (pathonly @icon) "Mui-Class-Lib")) ; Hier steht die Mui Klassen-Library
(set source-Liesmich (tackon (pathonly @icon) "Readme")) ; Die Liesmich Datei
(set source-readme (tackon (pathonly @icon) "Readme")) ; Die Liesmich Datei
(set source-italreadme (tackon (pathonly @icon) "Leggimi")) ; Die Liesmich Datei
(set source-ikon (tackon (pathonly @icon) "StormCPP.info")) ; Das Programm-Piktogramm
(set #prp-copy-samples
"Copying C and C++ examples...")
(set #hlp-copy-samples
"Use the manual and the examples to get a quick start with StormC")
(set #prp-copy-env
"Copying the StormC default icons...")
(set #hlp-copy-env
"The icons are used by the project management and by the editor")
(set #prp-copy-includes
"Copying the C++ includes...")
(set #hlp-copy-includes
"The includes are needed by the preprocessor of the compiler")
(set #prp-copy-libs
"Copying the linker libraries...")
(set #hlp-copy-libs
"These libraries are used by the linker")
(set #prp-copy-manual
"Copying the documentation...")
(set #hlp-copy-manual
"This is an Amiga Guide file for StormC")
(set #prp-copy-bin
"Copying the executables of StormC...")
(set #hlp-copy-bin
"If this is your first time insatallation of StormC, you should copy everything!")
(set #prp-copy-tools
"Copying the Screentool...")
(set #hlp-copy-tools
"This is an Screenmanager-Commodity for StormC")
(set #prp-copy-wizlib
"Copying the Wizard.Library")
(set #hlp-copy-wizlib
"The Library makes very short programms!")
(set #prp-copy-fastlib
"Copying the FAST-ANSI-Library")
(set #hlp-copy-fastlib
"With it you can generate fast ANSI-C programms.")
(set #prp-copy-muilib
"Copying the Mui Klassen-Library")
(set #hlp-copy-muilib
"The library makes it possible to program MUI with C++")
; Die Dateigroessen
(set size-stormcpp 24000)
(set size-stormc 437000)
(set size-stormed 210000)
(set size-stormshell 340000)
(set size-stormrun 220000)
(set size-stormasm 36000)
(set size-stormpics 50000)
(set size-stormlex 100000)
(set size-libs 520000)
(set size-inlcudes 270000)
(set size-demos 70000)
(set size-komplett ( + size-stormrun size-stormasm size-stormcpp size-stormc size-stormed size-stormshell size-stormpics size-stormlex size-libs size-inlcudes size-demos))
; ----------------------------- Prozeduren ------------------------------
(Procedure Make_Folder
(
(set folder (tackon folder "StormC"))
(if (= (exists folder) 0)
(
(makedir folder (infos))
)
))
)
;=====================================================================================
; Beginn der Installation
;=====================================================================================
; Eine kleine Einleitung, gefolgt vom Startbild des Installers.
(set act-user-level @user-level)
(user 1)
(message (cat "\nWelcome to the installation of the \n\n\"StormC demo "
stcpp-version " of the "stcpp-date "\"!\n\n"
"This script copies the files needed by StormC "
"to your harddisk.\n"))
(user act-user-level)
(welcome)
(complete 5)
(set act-user-level @user-level)
(user 1)
; Alte Version pruefen und entsprechende Warnung ausgeben! **************************************************************
(set folder "WORK:StormC")
(if (exists "StormC:" (noreq))
(
(message (cat "\nThere is already and installation of StormC\n"
"on your harddisk! Please select the parent\n"
"directory or the volume if you want to update\n"
"your old StormC installation!"))
(set folder (getassign "STORMC"))
)
)
(set cmpstr (getassign "STORMC"))
(user act-user-level)
(if (= @user-level 0)
(
(user 1)
(message (cat "The ENTRY mode needs a minimum of 5 MB of free harddisk space."
"Please select a drawer/volume for your StormC installation"
"\n\n"
"All other settings will be done by the installation "
"script to fit your system."))))
(set ok 0)
(while (not ok)
(set folder
(askdir
(prompt (cat "\n"
"Select a path for your StormC installation.\n"
"A drawer named StormC will be created!"))
(help (cat " You will get an overview of all volumes with 'Show drives' "
"Form this list you should select the first, non colored, items. "
"only\n"
" Typical names are \"WORK:\", \"HD0:\" or \"DH0:\"; "
"do not use such names as \"DF0:\", \"DF1:\", "
"\"DF2:\", \"DF3:\", \"RAD:\", \"RAM:\", \"System2.0:\", "
"\"WB_2.x:\", \"System3.0:\" or \"WB_3.x:\"!"
"\n\n"
"The Storm C installation can not be placed on a volume directly. "
"You have to select a drawer. Ohterwise an error will be shown. "
"\n\n"
@askdir-help))
(default folder)
(disk)
)
)
(Make_Folder) ; // Automatisch neues Verzeichnis anlegen!
; Ist der Dateiname leer oder endet mit einem ':' oder existiert unter
; diesem Namen kein Verzeichnis, wird eine Fehlermeldung angezeigt; andernfalls
; kann die Auswahl-Schleife beendet werden.
(if (or (or (or (<= (strlen folder) 0) (= (substr folder (- (strlen folder) 1) 1) ":")) (= (exists folder (noreq)) 0)) (= (getdiskspace folder) -1))
(message (cat "\nYour selection \"" folder "\" is not a valid "
"drawer !\n\n"
"Use 'Show drives' to get a list of all volumes. "
" Form this list you should only select the first, non color, items. "
"\n"
"Use \"New drawer...\" to create a new drawer on the current "
"volume."))
;else
(
(set freediskspace (getdiskspace folder)) ; Der freie Speicher auf diesem Medium
(if (< freediskspace size-komplett)
(
(user 1)
(message (cat "\nThe is not enough free space on the volume you "
"selected for the complete installation of StormC. "
"\n\n"
"Free diskspace " freediskspace "!\n"
"diskspace needed " size-komplett "!\n\n"
"Please select another volume !"))
)
;else
(set ok 1)
)
)
)
)
(makeassign "STORMC")
(user act-user-level)
(set @default-dest folder) ; Die Zuweisung ist sehr wichtig!
(set destbin (tackon folder "StormSYS"))
(if ; Compiler-Verzeichnis erzeugen
(= (exists destbin) 0)
(makedir destbin (infos))
)
(set destdemo (tackon folder "Examples"))
(if ; Demo-Verzeichnis erzeugen
(= (exists destdemo) 0)
(makedir destdemo (infos))
)
(set destinclude (tackon folder "Include"))
(if ; Includes-Verzeichnis erzeugen
(= (exists destinclude) 0)
(makedir destinclude)
)
(set destlib (tackon folder "Lib"))
(if ; Libraries-Verzeichnis erzeugen
(= (exists destlib) 0)
(makedir destlib)
)
(set destmanual (tackon folder "Manual"))
(if ; Dokumentations-Verzeichnis erzeugen
(= (exists destmanual) 0)
(makedir destmanual (infos))
)
(set desttools (tackon folder "Tools"))
(if ; Tools-Verzeichnis erzeugen
(= (exists desttools) 0)
(makedir desttools (infos))
)
(set rexxscripts (tackon folder "Rexx"))
(if ;Fastansilib-Verzeichnis erzeugen
(= (exists rexxscripts) 0)
(makedir rexxscripts)
)
(complete 5)
; Liesmich Datei auf Festplatte kopieren!
(copyfiles
(source source-Liesmich)
(dest folder)
(infos)
)
(copyfiles
(source source-readme)
(dest folder)
(infos)
)
(copyfiles
(source source-italreadme)
(dest folder)
(infos)
)
(complete 8)
(set morerunpath "run C/More Readme")
(run morerunpath) ; Liesmich laden
(complete 10)
(set destinfo (tackon folder "StormCPP.info"))
(if ; Projekt-Ikon erzeugen
(= (exists destinfo) 0)
(
(copyfiles
(source source-ikon)
(dest folder)
))
)
(complete 15)
(copyfiles ; Beispiele kopieren
(prompt #prp-copy-samples)
(help #hlp-copy-samples)
(source #samplesource)
(dest destdemo)
(all)
(confirm)
)
(complete 20)
(copyfiles ; Settings kopieren
(prompt #prp-copy-env)
(help #hlp-copy-env)
(source #envsource)
(dest "ENVARC:")
(all)
(confirm)
)
(complete 22)
(copyfiles ; Settings kopieren
(prompt #prp-copy-env)
(help #hlp-copy-env)
(source #envsource)
(dest "ENV:")
(all)
(confirm)
)
(complete 25)
(copyfiles ; Compiler kopieren
(prompt #prp-copy-bin)
(help #hlp-copy-bin)
(source #binsource)
(dest destbin)
(all)
(confirm)
)
(complete 40)
(copyfiles ; Includes kopieren
(prompt #prp-copy-includes)
(help #hlp-copy-includes)
(source #includesource)
(dest destinclude)
(all)
(confirm)
)
(complete 60)
(copyfiles ; Libs kopieren
(prompt #prp-copy-libs)
(help #hlp-copy-libs)
(source #libsource)
(dest destlib)
(all)
(confirm)
)
(complete 80)
(copyfiles ; Manual kopieren
(prompt #prp-copy-manual)
(help #hlp-copy-manual)
(source #manualsource)
(dest destmanual)
(all)
(confirm)
)
(complete 90)
(copyfiles ; Tools kopieren
(prompt #prp-copy-tools)
(help #hlp-copy-tools)
(source #toolssource)
(dest desttools)
(all)
(confirm)
)
(complete 91)
(copyfiles ; Fastlib kopieren
(prompt #prp-copy-fastlib)
(help #hlp-copy-fastlib)
(source #rexxsource)
(dest rexxscripts)
(all)
(confirm)
)
;(complete 92)
;(copyfiles ; Muilib kopieren
; (prompt #prp-copy-muilib)
; (help #hlp-copy-muilib)
; (source #muilibsource)
; (dest muilib)
; (all)
; (confirm)
;)
(complete 93)
(copylib ; Wizard.library kopieren
(prompt #prp-copy-wizlib)
(help #hlp-copy-wizlib)
(source #wizlib)
(dest "LIBS:")
(confirm)
)
(complete 96)
; ------- STARTUP ÄNDERN
(set command1 (cat "ASSIGN STORMC: " folder ""))
(set command1.txt
(cat
"\n\n\nThere User-Startup must be changed to get StromC "
"work right.\n\n"
command1
)
)
(startup "StormC"
(prompt command1.txt)
(help #help-startup)
(command command1)
)
(makeassign "STORMC")
(makeassign "STORMC" folder)
(complete 100)
; ------- FERTIG
(message (cat
"\nInstallation of StormC is done.\n"
"When the lines:\n" command1 "\nare not inserted in your Startup-Sequence or "
"User-Startup, please do it by your own.\n\n"
"\n\nBest wishes ... ")
)